home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 2 / AACD 2.iso / AACD / WebSites / MailingLists / AMOSLIST.0799 / 000190_nobody_Sat Jul 31 16:24:53 1999.msg < prev    next >
Internet Message Format  |  1999-08-02  |  3KB

  1. Received: from onelist.com (pop.onelist.com [209.207.164.229])
  2.     by osf1.gmu.edu (8.8.8/8.8.8) with SMTP id QAA09367
  3.     for <mcox4@osf1.gmu.edu>; Sat, 31 Jul 1999 16:24:45 -0400 (EDT)
  4. Received: (qmail 22512 invoked by alias); 31 Jul 1999 20:25:18 -0000
  5. Received: (qmail 22473 invoked from network); 31 Jul 1999 20:25:18 -0000
  6. Received: from unknown (HELO web904.mail.yahoo.com) (128.11.23.79) by pop.onelist.com with SMTP; 31 Jul 1999 20:25:18 -0000
  7. Message-ID: <19990731202425.9895.rocketmail@web904.mail.yahoo.com>
  8. Received: from [62.188.142.80] by web904.mail.yahoo.com; Sat, 31 Jul 1999 21:24:25 BST
  9. Date: Sat, 31 Jul 1999 21:24:25 +0100 (BST)
  10. From: =?iso-8859-1?q?Claude=20Heiland-Allen?= <cheilandallen@yahoo.co.uk>
  11. To: amos-list@onelist.com
  12. Mailing-List: list amos-list@onelist.com; contact amos-list-owner@onelist.com
  13. Delivered-To: mailing list amos-list@onelist.com
  14. Precedence: bulk
  15. List-Unsubscribe: <mailto:amos-list-unsubscribe@ONElist.com>
  16. Reply-to: amos-list@onelist.com
  17. Mime-Version: 1.0
  18. Content-Type: text/plain; charset=iso-8859-1
  19. Content-Transfer-Encoding: 8bit
  20. Subject: Re: [amos-list] 2nd mouse & Floating point
  21. Status: O
  22. X-Status: 
  23.  
  24. From: =?iso-8859-1?q?Claude=20Heiland-Allen?= <cheilandallen@yahoo.co.uk>
  25.  
  26. --- Leto Kauler <letok@netspace.net.au> wrote:
  27. > Also, I found on Aminet a doc on optimising AMOS
  28. > code.  One
  29. > suggestion was that floating point calculations,
  30. > which is supposed
  31. > involved with arrays like:  PLAYER#()  are _very_
  32. > slow.  I've been
  33. > using these arrays heaps in my new tank code!  I can
  34. > not afford
  35. > for the game to be slow.  What do other people know
  36. > about this? 
  37.  
  38. Floating point numbers are very slow (unless you have
  39. an FPU).  Especially double precision.  Fixed point
  40. numbers are really integers manipulated in a cunning
  41. way.  The basic idea is the same as using pence
  42. instead
  43. of pounds in a money calculation.
  44.  
  45. Here are the simple rules:
  46. addition/subtraction: same as for integers
  47.    x*k + y*k = z*k
  48. multiplication: multiply, then divide by magic
  49. constant
  50.    (x*k * y*k)/k = z*k
  51. division: multiply top by magic constant, then divide
  52.    (x*k * k) / y*k = z*k
  53.  
  54. If you use 256 as a magic constant, then you can use
  55. shift operations.  I wrote some assembly language
  56. stuff to do this quickly, I wouldn't know how to link
  57. it in with AMOS though.  I can post it to the list if
  58. you want.
  59.  
  60.  
  61.  
  62. Claude
  63.  
  64. _____________________________________________________________
  65. DO YOU YAHOO!?
  66. Get your free @yahoo.co.uk address at http://mail.yahoo.co.uk
  67.  
  68.  
  69. --------------------------- ONElist Sponsor ----------------------------
  70.  
  71. ONElist:  your connection to like-minds and kindred spirits.
  72.  
  73. ------------------------------------------------------------------------
  74. Official AMOS WWW: http://members.xoom.com/AmosFactory/front.html